package net.imagine.frontend;

import java.util.List;

import net.imagine.backend.mockrmi.ProxyLookuper;
import net.imagine.core.ImageProcessResult;

import org.springframework.beans.factory.annotation.Autowired;

public abstract class ProcedureCaller {
	@Autowired
	protected ProxyLookuper lookuper;

	public void setLookuper(ProxyLookuper lookuper) {
		this.lookuper = lookuper;
	}

	public abstract <T> T callProcedure(List<? extends ImageProcessResult> results, Object... otherArgs);

	public abstract <T, E extends ImageProcessResult> T callProcedure(E result, Object... otherArgs);
}
